home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-11-08 | 4.2 KB | 148 lines | [TEXT/MPS ] |
- //========================================================================================
- //
- // File: FWIdle.cpp
- // Release Version: $ 1.0d11 $
- //
- // Copyright: © 1995 by Apple Computer, Inc., all rights reserved.
- //
- //========================================================================================
-
- #include "FWFrameW.hpp"
-
- #ifndef FWIDLE_H
- #include "FWIdle.h"
- #endif
-
- #ifndef FWPART_H
- #include "FWPart.h"
- #endif
-
- #ifndef FWFRAME_H
- #include "FWFrame.h"
- #endif
-
- #ifndef FWPRIDEB_H
- #include "FWPriDeb.h"
- #endif
-
- // ----- OpenDoc Includes -----
-
- #ifndef SOM_ODSession_xh
- #include <ODSessn.xh>
- #endif
-
- #ifndef SOM_ODDispatcher_xh
- #include <Disptch.xh>
- #endif
-
- //========================================================================================
- // RunTime Info
- //========================================================================================
-
- #if FW_LIB_EXPORT_PRAGMAS
- #pragma lib_export on
- #endif
-
- #ifdef FW_BUILD_MAC
- #pragma segment fwpart2
- #endif
-
- FW_DEFINE_CLASS_M0(FW_MIdle)
-
- //========================================================================================
- // class FW_MIdle
- //========================================================================================
-
- //----------------------------------------------------------------------------------------
- // FW_MIdle::FW_MIdle
- //----------------------------------------------------------------------------------------
-
- FW_MIdle::FW_MIdle(FW_CPart* part, FW_CFrame* frame) :
- fPart(part),
- fFrame(frame),
- fRegistered(FALSE)
- {
- FW_ASSERT(fPart != NULL);
- }
-
- //----------------------------------------------------------------------------------------
- // FW_MIdle::~FW_MIdle
- //----------------------------------------------------------------------------------------
-
- FW_MIdle::~FW_MIdle()
- {
- FW_ASSERT(fRegistered == FALSE);
- }
-
- //----------------------------------------------------------------------------------------
- // FW_MIdle::RegisterIdle
- //----------------------------------------------------------------------------------------
-
- void FW_MIdle::RegisterIdle(Environment *ev, ODIdleFrequency frequency)
- {
- if (fRegistered)
- {
- PrivSetIdleFrequency(ev, frequency);
- }
- else
- {
- PrivRegisterIdle(ev, frequency);
- fRegistered = TRUE;
- fPart->PrivCountIdleRegistering(TRUE);
- }
- }
-
- //----------------------------------------------------------------------------------------
- // FW_MIdle::UnregisterIdle
- //----------------------------------------------------------------------------------------
-
- void FW_MIdle::UnregisterIdle(Environment *ev)
- {
- if (fRegistered)
- {
- PrivUnregisterIdle(ev);
- fRegistered = FALSE;
- fPart->PrivCountIdleRegistering(FALSE);
- }
- }
-
- //----------------------------------------------------------------------------------------
- // FW_MIdle::SetIdleFrequency
- //----------------------------------------------------------------------------------------
-
- void FW_MIdle::SetIdleFrequency(Environment *ev, ODIdleFrequency frequency)
- {
- if (fRegistered)
- PrivSetIdleFrequency(ev, frequency);
- else
- RegisterIdle(ev, frequency);
- }
-
- //----------------------------------------------------------------------------------------
- // FW_MIdle::PrivRegisterIdle
- //----------------------------------------------------------------------------------------
-
- void FW_MIdle::PrivRegisterIdle(Environment *ev, ODIdleFrequency frequency)
- {
- fPart->GetSession(ev)->GetDispatcher(ev)->RegisterIdle(ev, fPart->GetODPart(ev), fFrame != NULL ? fFrame->GetODFrame(ev) : NULL, frequency);
- }
-
- //----------------------------------------------------------------------------------------
- // FW_MIdle::PrivUnregisterIdle
- //----------------------------------------------------------------------------------------
-
- void FW_MIdle::PrivUnregisterIdle(Environment *ev)
- {
- fPart->GetSession(ev)->GetDispatcher(ev)->UnregisterIdle(ev, fPart->GetODPart(ev), fFrame != NULL ? fFrame->GetODFrame(ev) : NULL);
- }
-
- //----------------------------------------------------------------------------------------
- // FW_MIdle::PrivSetIdleFrequency
- //----------------------------------------------------------------------------------------
-
- void FW_MIdle::PrivSetIdleFrequency(Environment *ev, ODIdleFrequency frequency)
- {
- fPart->GetSession(ev)->GetDispatcher(ev)->SetIdleFrequency(ev, fPart->GetODPart(ev), fFrame != NULL ? fFrame->GetODFrame(ev) : NULL, frequency);
- }
-
-